package ${entity.javaPackage};

<#if entity.hasLocalDateTime>
import com.fasterxml.jackson.annotation.JsonFormat;
</#if>
import com.ipzoe.common.util.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

<#if entity.hasBigDecimal>
import java.math.BigDecimal;
</#if>
<#if entity.hasLocalDateTime>
import java.time.LocalDateTime;
</#if>
<#if entity.hasLocalDate>
import java.time.LocalDate;
</#if>
<#if entity.hasLocalTime>
import java.time.LocalTime;
</#if>

/**
 * ${entity.describe}
 * <p>
 * Created ${entity.currentDate}.
 *
 * @author pfzhang
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "${entity.className}", description = "${entity.describe}")
public class ${entity.className}<#if entity.superclass?has_content> extends ${entity.superclass} </#if>{
    <#list entity.properties as property>

    <#if property.describe??>
    /** ${property.describe} */
    @ApiModelProperty("${property.describe}")
    </#if>
    <#if property.javaType?? && 'LocalDateTime' == property.javaType>
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    </#if>
        <#if property.javaType?? && 'LocalDate' == property.javaType>
    @JsonFormat(pattern = "yyyy-MM-dd")
        </#if>
    private ${property.javaType} ${property.propertyName};
    </#list>
}